package com.rfsp.mcp.pojo.vo;

import com.rfsp.mcp.enums.McpConst;
import com.rfsp.mcp.pojo.po.ProductPO;
import org.apache.commons.lang3.time.DateFormatUtils;

import java.math.BigDecimal;
import java.util.Date;

public class ProductVO {
    /** 主键ID */
    private Long id;

    /** 辅助标识，防止修改主键ID查询的漏洞，不保证唯一 */
    private String aid;

    /** 资金方OrgId */
    private Long bankOrgId;

    /** 产品名称 */
    private String productName;

    /** 产品编号 */
    private String productCode;

    /** 业务类型(页面手写输入的) */
    private String businessType;

    /** 适用区域类型（1：全国 2：其它） */
    private String areaType;

    /** 适用区域 */
    private String areaCode;

    /** 产品状态（1：未发布 2：已发布 3：已停用） */
    private String productStatus;

    /** 贷款金额 */
    private String amount;

    /** 贷款期限 */
    private String timeLimit;

    /** 参考利率 */
    private String rate;

    /** 还款方式(页面手写输入的) */
    private String repayType;

    /** 平台经办人 */
    private String businessUser;

    /** 操作人 */
    private String optUserCode;

    /** 发布时间 */
    private Date publishTime;
    
    private String publishTimeStr;

    /** 发布人 */
    private Long publishUserId;

    /** 停用时间 */
    private Date stopTime;

    /** 停用人 */
    private Long stopUserId;

    /** 操作用户ID */
    private Long optUserId;

    /** 操作时间 */
    private Date optTime;

    /** 操作类型（1.新增 2.修改 3.删除） */
    private String optType;

    /** null */
    private String remark1;

    /** null */
    private String remark2;

    /** null */
    private String remark3;

    /** null */
    private String remark4;

    /** null */
    private String remark5;

    /** 其他说明 */
    private String productDesc;
    
    /** 区域全名 */
    private String areaName;

    /** 抚顺医保贷 金融产品 区域*/
    private String areaCodes;
    private String areaNames;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getAid() {
        return aid;
    }

    public void setAid(String aid) {
        this.aid = aid;
    }

    public Long getBankOrgId() {
        return bankOrgId;
    }

    public void setBankOrgId(Long bankOrgId) {
        this.bankOrgId = bankOrgId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public String getBusinessType() {
        return businessType;
    }

    public void setBusinessType(String businessType) {
        this.businessType = businessType;
    }

    public String getAreaType() {
        return areaType;
    }

    public void setAreaType(String areaType) {
        this.areaType = areaType;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    public String getProductStatus() {
        return productStatus;
    }

    public void setProductStatus(String productStatus) {
        this.productStatus = productStatus;
    }

    public String getAmount() {
        return amount;
    }

    public void setAmount(String amount) {
        this.amount = amount;
    }

    public String getTimeLimit() {
        return timeLimit;
    }

    public void setTimeLimit(String timeLimit) {
        this.timeLimit = timeLimit;
    }

    public String getRate() {
        return rate;
    }

    public void setRate(String rate) {
        this.rate = rate;
    }

    public String getRepayType() {
        return repayType;
    }

    public void setRepayType(String repayType) {
        this.repayType = repayType;
    }

    public String getBusinessUser() {
        return businessUser;
    }

    public void setBusinessUser(String businessUser) {
        this.businessUser = businessUser;
    }

    public String getOptUserCode() {
        return optUserCode;
    }

    public void setOptUserCode(String optUserCode) {
        this.optUserCode = optUserCode;
    }

    public Date getPublishTime() {
        return publishTime;
    }

    public void setPublishTime(Date publishTime) {
        this.publishTime = publishTime;
    }

    public Long getPublishUserId() {
        return publishUserId;
    }

    public void setPublishUserId(Long publishUserId) {
        this.publishUserId = publishUserId;
    }

    public Date getStopTime() {
        return stopTime;
    }

    public void setStopTime(Date stopTime) {
        this.stopTime = stopTime;
    }

    public Long getStopUserId() {
        return stopUserId;
    }

    public void setStopUserId(Long stopUserId) {
        this.stopUserId = stopUserId;
    }

    public Long getOptUserId() {
        return optUserId;
    }

    public void setOptUserId(Long optUserId) {
        this.optUserId = optUserId;
    }

    public Date getOptTime() {
        return optTime;
    }

    public void setOptTime(Date optTime) {
        this.optTime = optTime;
    }

    public String getOptType() {
        return optType;
    }

    public void setOptType(String optType) {
        this.optType = optType;
    }

    public String getRemark1() {
        return remark1;
    }

    public void setRemark1(String remark1) {
        this.remark1 = remark1;
    }

    public String getRemark2() {
        return remark2;
    }

    public void setRemark2(String remark2) {
        this.remark2 = remark2;
    }

    public String getRemark3() {
        return remark3;
    }

    public void setRemark3(String remark3) {
        this.remark3 = remark3;
    }

    public String getRemark4() {
        return remark4;
    }

    public void setRemark4(String remark4) {
        this.remark4 = remark4;
    }

    public String getRemark5() {
        return remark5;
    }

    public void setRemark5(String remark5) {
        this.remark5 = remark5;
    }

    public String getProductDesc() {
        return productDesc;
    }

    public void setProductDesc(String productDesc) {
        this.productDesc = productDesc;
    }




    private String bankOrgName;
    private String productStatusName;

    /** 适用区域 */
    private String provinceName;
    private String cityName;
    private String countyName;

    

    public String getBankOrgName() {
        return bankOrgName;
    }

    public void setBankOrgName(String bankOrgName) {
        this.bankOrgName = bankOrgName;
    }

    public String getProductStatusName() {
        return McpConst.ProductStatus.getVal(this.getProductStatus());
    }

    public void setProductStatusName(String productStatusName) {
        this.productStatusName = productStatusName;
    }

    public String getProvinceName() {
        return provinceName;
    }

    public void setProvinceName(String provinceName) {
        this.provinceName = provinceName;
    }

    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    public String getCountyName() {
        return countyName;
    }

    public void setCountyName(String countyName) {
        this.countyName = countyName;
    }

    public String getAreaName() {
        return areaName;
    }

    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }

	public String getPublishTimeStr() {
		return DateFormatUtils.format(this.getPublishTime(), "yyyy-MM-dd HH:mm:ss");
	}

	public void setPublishTimeStr(String publishTimeStr) {
		this.publishTimeStr = publishTimeStr;
	}

    public String getAreaCodes() {
        return areaCodes;
    }

    public void setAreaCodes(String areaCodes) {
        this.areaCodes = areaCodes;
    }

    public String getAreaNames() {
        return areaNames;
    }

    public void setAreaNames(String areaNames) {
        this.areaNames = areaNames;
    }
}